table of contents
MMAP2(2) | Руководство программиста Linux | MMAP2(2) |
ИМЯ¶
mmap2 - тображает файлы или устройства в память
ОБЗОР¶
#include <sys/mman.h>
#include <syscall.h>
_syscall6(void *, start, size_t, length, int, prot, int, flags, int, fd, off_t, pgoffset);
void * mmap2(void *start, size_t length, int prot, int flags, int fd, off_t pgoffset);
#endif
ОПИСАНИЕ¶
Функция mmap2 работает точно также как и mmap(2), за исключением того, что последний аргумент задаёт смещение в файле в единицах размера системной страницы (вместо байт). Это позволяет приложениям использовать 32-бинтое значение off_t для отображения больших файлов (обычно размером больше чем 2^44 байт).
ВОЗВРАЩАЕМОЕ ЗНАЧЕНИЕ¶
В случае успеха, mmap2 возвращает указатель на область отображения. В случае ошибки, возвращается -1 и значение errno устанавливается соответствующим образом.
ОШИБКИ¶
EFAULT¶
Проблема с получением данных из пространства пользователя.
ЗАМЕЧАНИЯ¶
Функция mmap2 доступна начиная с Linux 2.3.31. Она является специфичной для Linux и не должна использоваться в приложениях, которые планируются как переносимые на другие платформы. См. также функцию mmap64(), которая является частью LFS (Large File Summit).
СМОТРИ ТАКЖЕ¶
getpagesize(2), mmap(2), mremap(2), msync(2), shm_open(2)
ПЕРЕВОД¶
Перевёл с английского Виктор Вислобоков <corochoone@perm.ru> 2004
2002-01-31 | Linux 2.3.31 |